#pragma once
#include "EpilStatementCodeBase.h"
#include "EpilChunkCode.h"
#include "EpilExpressionCodeBase.h"


class EpilRepeatStatementCode : public EpilStatementCodeBase
{
	EPIL_CODE_DECL( RepeatStatement );

public:
	EpilRepeatStatementCode( const EpilLexLocation & location );
	virtual ~EpilRepeatStatementCode();

	EpilExpressionCodeBase *			GetCondition() const								{ return m_condition; }
	void								SetCondition( EpilExpressionCodeBase * condition )	{ m_condition = condition; }
	EpilChunkCode *						GetBlock() const									{ return m_block; }
	void								SetBlock( EpilChunkCode * block )					{ m_block = block; }

	virtual tstring						ToEpilCode( int indent ) const;

private:
	EpilExpressionCodeBase *			m_condition;
	EpilChunkCode *						m_block;
};